#coding:utf-8
"""验证登陆的装饰器"""

from functools import wraps
from flask import jsonify,session, g
from ihome.utils.response_code import RET

def login_wrapper(func):

    # 不变原函数的__name__,__doc__等属性
    @wraps(func)
    def wrapper(*args,**kwargs):
        user_id = session.get('user_id')

        #todo 发现user_id是常用数据,所以用g变量,来存储
        g.user_id = user_id

        if user_id:
            # 如果登陆,则执行原视图
            return func(*args,**kwargs)
        else:
            # 返回未登陆信息
            return jsonify(errno=RET.SERVERERR, errmsg='用户未登陆')

    return wrapper


